package com.education.ai.util;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

/**
 * 密码更新工具类
 * 用于批量更新用户密码
 */
@Component
public class PasswordUpdateUtil {

    private static final Logger logger = LoggerFactory.getLogger(PasswordUpdateUtil.class);

    @Autowired
    private JdbcUtil jdbcUtil;

    /**
     * 将所有教师和学生的密码重置为指定值
     * 
     * @param password 新密码
     * @return 更新结果
     */
    public boolean resetAllPasswords(String password) {
        try {
            logger.info("开始重置所有用户密码...");
            
            // 更新教师密码 - 不再设置salt字段
            String teacherSql = "UPDATE teachers SET password = ?";
            int teacherCount = jdbcUtil.executeUpdate(teacherSql, password);
            logger.info("已更新 {} 个教师账户的密码", teacherCount);
            
            // 更新学生密码 - 不再设置salt字段
            String studentSql = "UPDATE students SET password = ?";
            int studentCount = jdbcUtil.executeUpdate(studentSql, password);
            logger.info("已更新 {} 个学生账户的密码", studentCount);
            
            return true;
        } catch (Exception e) {
            logger.error("重置密码失败", e);
            return false;
        }
    }
} 